$(function(){
    // 域使用或禁用
    $('input[data-rel="check_used"]').change(function(){
        if(this.checked){
            $(this).parent().next().find('input,textarea,button').attr('disabled','disabled');
        }else{
            $(this).parent().next().find('input,textarea,button').removeAttr('disabled');
        }
    });

    var list = ['arguments','attributes','methods'];
    for(var i = list.length;--i > -1;){
        (function(itm){
            $('#' + itm + 'Add').click(function(){
                $('#' + itm + 'AddList').append($('<tr>\
                    <td>\
                        <input type="text" name="' + itm + '_name[]"/>\
                    </td>\
                    <td>\
                        <textarea class="span6" name="' + itm + '_desc[]"></textarea>\
                    </td>\
                    <td>\
                        <button type="button" class="btn btn-small" onclick="$(this).parent().parent().remove();"><i class="icon-remove-sign"></i>Del</button>\
                    </td>\
                </tr>'));
            })
        })(list[i])
    }

    //    $('#loadDraft').click(function(){
    //        $.get('/src/php/Loaddraft.php',{
    //            file_name: $(this).prev().val(),
    //            path: $('select[name="path"]').eq(0).val()
    //        },function(rs){
    //            if(rs.ret == 0){
    //                var data = rs.data;
    //                var $tmp,key;
    //                for(var itm in data){
    //                    if(typeof data[itm] == 'object'){
    //                        key = itm.substr(0,itm.indexOf('_'));
    //                        $tmp = $('#' + key + 'AddList');
    //                        $tmp.children().remove();
    //                        for(var innerItm in data[itm]){
    //                            $tmp.append($('<tr>\
    //                                <td>\
    //                                    <input type="text" name="//' + key + '_name[]" value="' + innerItm + '"/>\
    //                                </td>\
    //                                <td>\
    //                                    <textarea class="span6" name="//' + key + '_desc[]">' + data[itm][innerItm] + '</textarea>\
    //                                </td>\
    //                                <td>\
    //                                    <button type="button" class="btn btn-small" onclick="$(this).parent().parent().remove();"><i class="icon-remove-sign"></i>Del</button>\
    //                                </td>\
    //                            </tr>//'));
    //                        }
    //                    }else{
    //                        data[itm] != null ? $('input[name="' + itm + '"]').val(data[itm]) : null;
    //                    }
    //                }
    //            }else{
    //                alert('Inner Error!');
    //            }
    //        });
    //    },'json');

    $('#loadDraft').click(function(){
        $.confirm.trigger("确认加载？", function(){
            $.get('/src/php/Loaddraft.php',{
                file_name: $('input[name="file_name"]').val(),
                path: $('select[name="path"]').eq(0).val()
            },function(rs){
                try{
                    rs = JSON.parse(rs);
                    if(rs.ret == -1){
                        $.alert(rs.msg);
                    }
                }catch(e){
                    window.location = '/src/php/Loaddraft.php?file_name=' + $('input[name="file_name"]').val() + '&path=' + $('select[name="path"]').eq(0).val();
                }
            });
        });
    })

    function save(){
        $.post('/src/php/Save.php',$('#postForm').serialize(),function(rs){
            if(rs.ret == 0){
                $.alert('Save successfully!');
            }else{
                $.alert('Inner Error!');
            }
        },'json');
    }

    $('#save').click(function(){
        $.confirm.trigger("确认保存？", save);
    });

    $('#del').click(function(){
        $.confirm.trigger("确认删除？", function(){
            $.post('/src/php/Delete.php',$('#postForm').serialize(),function(rs){
                $.alert(rs.msg);
            },'json');
        })
    })

    $('#makeNav').click(function(){
        $.get('/src/php/Make_Nav.php','',function(rs){
            if(rs.ret == 0){
                $.alert(rs.msg);
            }else{
                $.alert(rs.msg);
            }
        },'json');
    });

    $('#export').click(function(){
        $.get('/src/php/Export_Db.php',"",function(rs){
            if(rs.ret == 0){
                $.alert(rs.data + ' 备份成功！');
            }
        },'json');
    });

    $('#import').click(function(){
        $.get('/src/php/File_list.php',{
            file_name: 'jsdoc_pakinguo_'
        },function(rs){
            $.confirm.trigger(fileList(rs),function(){
                $.post('/src/php/Import_Db.php',$('#fileList').serialize(),function(rs){
                    $.alert(rs.msg);
                },'json');
            });
        },'json');
    });

    $('#postForm').validate({
        submitHandler: function(form){
            $.post('/src/php/Dispose.php',$(form).serialize(),function(rs){
                if(rs.ret == 0){
                    $.alert(rs.msg);
                }else{
                    $.alert(rs.msg);
                }
            },'json');
        }
    });

    // 注册ctrl+s事件
    $(document).keydown(function(e){
        if(e.ctrlKey && e.keyCode == 83){
            e.preventDefault();
            save();
        }
    });

    function fileList(data){
        var tmp = '<li><a href="javascript:"><label style="margin-bottom:0;"><input type="radio" name="file_name" value="{name}" style="margin:0 4px;"/>{name}</label></a></li>';
        var html = '<form id="fileList" style="margin:0">\
                        <ul class="nav nav-tabs nav-stacked" style="margin:0">\
                            <li class="active"><a href="javascript:">选择导入的文件</a></li>';
        for(var i = 0,l = data.length;i < l;i++){
            html += tmp.substr(0).replace(/{name}/g, data[i]);
        }
        html += '</ul></form>';
        return html;
    }

});